requests,主要是利用記錄伺服器要求的頻率和持續時間來進行效能分析
伺服器本身會利用SDK裡的TraceRequest來記錄每一個Http request
這部分我們可以寫一些code也可以不用寫一行code
首先我們可以直接以下列程式碼片段做查詢(這幾天也累計了不少資料的說)
requests
| summarize count = sum(itemCount), avgduration = avg(duration) by name
那麼得到這些資料有什麼用呢?
依照我們查詢出來的欄位我們可以看到被訪問的位置、訪問次數、平均的持續時間
這些資訊可以對之後的效能調校會有很大的幫助
上面介紹完不用寫code的情況,那麼大家一定會很好奇為什麼也可以寫code處理
到底寫code處理又會有什麼不同呢?那就讓我們來仔細看下去!
首先我們會使用TelemetryClient裡的StartOperation
謎之音:疑?這東西看起來跟Request沒什麼關係啊 為什麼不是使用TraceRequest呢?
那是因為今天這裡要介紹的是一個叫做作業內容的東東
而且他本來就會紀錄request了,再呼叫不就是...
作業內容?這是什麼呢?
意思就是我們在所有有關自訂事件和度量這個系列所提的東西都可以一起使用
例如我們可以這樣做....
using (var operation = telemetryClient.StartOperation<RequestTelemetry>("作業的名稱"))
{
telemetryClient.TrackTrace("測試");
operation.Telemetry.ResponseCode = "200";
telemetryClient.StopOperation(operation);
}
沒錯...就是這麼短短的一行就可以了
這樣我們可以很容易的把整個作業流程給關聯起來(詳情會在後面的章節介紹ˋ)
接著只要我們發布完成後就搞定了!!
ps.這東西就算沒有使用web application也行唷